import { MappingData } from './MappingData'
export const DefaultColor = ['#1664FF', '#1AC6FF', '#FF8A00', '#3CC780', '#7442D4', '#FFC400', '#304D77', '#B48DEB', '#009488', '#FF7DDA']

// TODO  轴设置
const ChartsFromAxes = [
    { span: 24, formType: 'RADIO', name: 'hover', label: '是否交互', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'NUMBER', name: 'min', label: '最小值' },
    { span: 24, formType: 'NUMBER', name: 'max', label: '最大值' },
    { span: 24, formType: 'RADIO', name: 'domainLine_visible', label: '轴线', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'COLOR', name: 'domainLine_stroke', label: '轴线颜色', rules: true,
        jugdeField: 'domainLine_visible', jugdeValue: [true]
    },
    { span: 24, formType: 'RADIO', name: 'tick_visible', label: '刻度', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'COLOR', name: 'tick_stroke', label: '刻度颜色', rules: true,
        jugdeField: 'tick_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tick_tickSize', label: '刻度长度', rules: true,
        jugdeField: 'tick_visible', jugdeValue: [true]
    },
    { span: 24, formType: 'RADIO', name: 'grid_visible', label: '网格线', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'COLOR', name: 'grid_stroke', label: '网格线颜色', rules: true,
        jugdeField: 'grid_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'grid_lineDashA', label: '实现长度', rules: true,
        jugdeField: 'grid_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'grid_lineDashB', label: '虚线长度', rules: true,
        jugdeField: 'grid_visible', jugdeValue: [true]
    },

    { formType: 'TempTitle', label: '标题', name: 'ChartsFromAxesTitle' },
    { span: 24, formType: 'RADIO', name: 'title_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'NUMBER', name: 'title_space', label: '轴距离', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'INPUT', name: 'title_text', label: '标题内容', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_stroke', label: '描边颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_fill', label: '文字颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_fontSize', label: '文字字号', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'title_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },

    { formType: 'TempTitle', label: '标签', name: 'ChartsFromAxesLabel' },
    { span: 24, formType: 'RADIO', name: 'label_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'INPUT', name: 'label_text', label: '标签内容',
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'label_stroke', label: '描边颜色', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'label_fill', label: '文字颜色', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_fontSize', label: '文字字号', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'label_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'label_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },

    { formType: 'TempTitle', label: '单位', name: 'ChartsFromAxesUnit' },
    { span: 24, formType: 'RADIO', name: 'unit_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'INPUT', name: 'unit_text', label: '单位内容',
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_dx', label: '文字左移', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_dy', label: '文字上移', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'unit_stroke', label: '描边颜色', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'unit_fill', label: '文字颜色', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_fontSize', label: '文字字号', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'unit_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'unit_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'unit_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'unit_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'unit_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'unit_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'unit_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'unit_visible', jugdeValue: [true]
    },
]
const ChartsFromAxesA01 = [
    {
        span: 24, formType: 'LIST', name: 'axes_setUp', label: '轴设置',
        children: [
            { span: 24, formType: 'SELECT', name: 'orient', label: '轴线位置', rules: true, valueEnum: MappingData.Charts__VchartsAxesOrientA01 },
            ...ChartsFromAxes,
        ]
    },
]
const ChartsFromAxesA02 = [
    {
        span: 24, formType: 'LIST', name: 'axes_setUp', label: '轴设置',
        children: [
            { span: 24, formType: 'SELECT', name: 'orient', label: '轴线位置', rules: true, valueEnum: MappingData.Charts__VchartsAxesOrientA02 },
            ...ChartsFromAxes,
        ]
    },
]

// TODO 标题设置
const ChartsFromTitle = [
    { span: 24, formType: 'RADIO', name: 'title_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'INPUT', name: 'title_text', label: '标题内容', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_background', label: '背景颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'title_align', label: '水平对齐', rules: true, valueEnum: MappingData.System__AlignmentLCR,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_innerPadding', label: '内部填充', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_fill', label: '文字颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_fontSize', label: '标题字号', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'title_fontFamily', label: '标题字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_fontWeight', label: '标题加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_fontStyle', label: '标题倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'title_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'title_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'title_stroke', label: '描边颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
]

// TODO 图例设置
const ChartsFromLegends = [
    {
        span: 24, formType: 'LIST', name: 'legends_setUp', label: '图例设置',
        children: [
            { span: 24, formType: 'RADIO', name: 'visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'RADIO', name: 'orient', label: '图例位置', rules: true, valueEnum: MappingData.Charts__VchartsAxesOrientA01,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'position', label: '对齐方式', rules: true, valueEnum: MappingData.Charts__VchartsLegendsPosition,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'padding', label: '填充间距', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'select', label: '开启选中', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'selectMode', label: '操作模式', rules: true, valueEnum: MappingData.Charts__VchartsLegendsSelectMode,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'allowAllCanceled', label: '全部取消', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },

            { formType: 'TempTitle', label: '标题', name: 'ChartsFromLegendsTitle' },
            { span: 24, formType: 'RADIO', name: 'title_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'COLOR', name: 'title_background', label: '背景颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'title_align', label: '对齐方式', rules: true, valueEnum: MappingData.Charts__VchartsLegendsPosition,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'title_space', label: '图例间距', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'INPUT', name: 'title_text', label: '文字内容', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'title_fill', label: '文字颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'title_fontSize', label: '文字字号', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'title_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'title_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'title_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'title_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'title_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'title_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'title_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'title_shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'title_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'title_lineWidth', label: '描边粗细', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'title_stroke', label: '描边颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },

            {
                formType: 'TempTitle', label: '图例', name: 'ChartsFromLegendsItem',
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_spaceCol', label: '水平间距', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_spaceRow', label: '垂直间距', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_padding', label: '内部填充', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'item_align', label: '对齐方式', rules: true, valueEnum: MappingData.System__AlignmentLR,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'item_focus', label: '行内聚焦', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_focusSize', label: '聚焦尺寸', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_backRadius', label: '背景圆角', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_shape_space', label: '图文间距', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_shape_size', label: '图标大小', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_label_space', label: '文字间距', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'item_label_fill', label: '文字颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_label_fontSize', label: '文字字号', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'item_label_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'item_label_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'item_label_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'item_label_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'item_label_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_label_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_label_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_label_shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'item_label_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'item_label_lineWidth', label: '描边粗细', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'item_label_stroke', label: '描边颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
        ]
    },
]

// TODO 标签 
const ChartsFromLabel = [
    {
        span: 24, formType: 'INPUT', name: 'label_formatter', label: '标签内容', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_offset', label: '标签距离', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_overlap', label: '防止重叠', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_smartInvert', label: '智能反色', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_direction', label: '排列方式', rules: true, valueEnum: MappingData.Charts__VChartsDirectionA01,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_maxLineWidth', label: '最大长度', rules: true,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_suffixPosition', label: '省略方式', rules: true, valueEnum: MappingData.Charts__VchartsLegendsPosition,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_fontSize', label: '文字字号', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'label_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'label_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'label_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'label_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'label_stroke', label: '描边颜色', rules: true,
        jugdeField: 'title_visible', jugdeValue: [true]
    }
]
const ChartsFromLabelA01 = [
    { span: 24, formType: 'RADIO', name: 'label_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'SELECT', name: 'label_position', label: '标签位置', rules: true, valueEnum: MappingData.Charts__VchartsLabelPosition,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    ...ChartsFromLabel
]
const ChartsFromLabelA02 = [
    { span: 24, formType: 'RADIO', name: 'label_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'SELECT', name: 'label_position', label: '标签位置', rules: true, valueEnum: MappingData.Charts__VchartsPieLabelPosition,
        jugdeField: 'label_visible', jugdeValue: [true]
    },
    ...ChartsFromLabel
]

// TODO 提示
const ChartsFromTooltip = [
    {
        span: 24, formType: 'RADIO', name: 'tooltip_visible', label: '是否启用', rules: true,
        valueEnum: MappingData.IsEnabledBool, tooltip: '配置后需刷新后正确渲染'
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_trigger', label: '触发方式', rules: true, valueEnum: MappingData.Charts__VchartsTrigger,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_spaceRow', label: '内容间距', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    { span: 24, formType: 'RADIO', name: 'tooltip_mark_visible', label: '图元', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_mark_position', label: '位置选择', rules: true, valueEnum: MappingData.Charts__VchartsTooltipPosition,
        jugdeField: 'tooltip_mark_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_mark_positionMode', label: '相对位置', rules: true, valueEnum: MappingData.Charts__VchartsTooltipPositionMode,
        jugdeField: 'tooltip_mark_visible', jugdeValue: [true]
    },
    { span: 24, formType: 'RADIO', name: 'tooltip_dimension_visible', label: '维度', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_dimension_position', label: '位置选择', rules: true, valueEnum: MappingData.Charts__VchartsTooltipPosition,
        jugdeField: 'tooltip_dimension_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_dimension_positionMode', label: '相对位置', rules: true, valueEnum: MappingData.Charts__VchartsTooltipPositionMode,
        jugdeField: 'tooltip_dimension_visible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: '背景', name: 'ChartsFromTooltipBack', jugdeField: 'tooltip_visible', jugdeValue: [true] },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_padding', label: '内部填充', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'tooltip_panel_backgroundColor', label: '背景颜色', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'tooltip_panel_borderColor', label: '边框颜色', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_borderWidth', label: '边框宽度', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_borderRadius', label: '边框圆角', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_shadowX', label: '阴影X轴', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_shadowY', label: '阴影Y轴', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_shadowBlur', label: '阴影模糊', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_panel_shadowSpread', label: '阴影扩展', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'tooltip_panel_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: '标题', name: 'ChartsFromTooltipTitle', jugdeField: 'tooltip_visible', jugdeValue: [true] },
    {
        span: 24, formType: 'COLOR', name: 'tooltip_titleLabel_fontColor', label: '文字颜色', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_titleLabel_fontSize', label: '文字字号', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_titleLabel_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_titleLabel_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_titleLabel_textAlign', label: '对齐方式', rules: true, valueEnum: MappingData.System__AlignmentLCR,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: '图标', name: 'ChartsFromTooltipIcon', jugdeField: 'tooltip_visible', jugdeValue: [true] },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_shape_size', label: '图标尺寸', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_shape_spacing', label: '右侧间距', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: '内容', name: 'ChartsFromTooltipText', jugdeField: 'tooltip_visible', jugdeValue: [true] },
    {
        span: 24, formType: 'COLOR', name: 'tooltip_keyLabel_fontColor', label: '文字颜色', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_keyLabel_fontSize', label: '文字字号', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_keyLabel_tspacing', label: '右侧间距', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_keyLabel_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_keyLabel_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_keyLabel_textAlign', label: '对齐方式', rules: true, valueEnum: MappingData.System__AlignmentLCR,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: '数值', name: 'ChartsFromTooltipNumber', jugdeField: 'tooltip_visible', jugdeValue: [true] },
    {
        span: 24, formType: 'COLOR', name: 'tooltip_valueLabel_fontColor', label: '文字颜色', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_valueLabel_fontSize', label: '文字字号', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'tooltip_valueLabel_tspacing', label: '右侧间距', rules: true,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'tooltip_valueLabel_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_valueLabel_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'tooltip_valueLabel_textAlign', label: '对齐方式', rules: true, valueEnum: MappingData.System__AlignmentLCR,
        jugdeField: 'tooltip_visible', jugdeValue: [true]
    },
]

// TODO 指示设置
const ChartsFromCrosshair = [
    { span: 24, formType: 'RADIO', name: 'crosshair_trigger', label: '触发方式', rules: true, valueEnum: MappingData.Charts__VchartsTrigger },
    { formType: 'TempTitle', label: 'X轴辅助', name: 'ChartsFromCrosshairX1' },
    { span: 24, formType: 'RADIO', name: 'crosshair_X_lineVisible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_X_lineType', label: '显示类型', rules: true, valueEnum: MappingData.Charts__VchartsCrosshairType,
        jugdeField: 'crosshair_X_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_X_lineFill', label: '填充颜色', rules: true,
        jugdeField: 'crosshair_X_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_X_lineStroke', label: '线段颜色', rules: true,
        jugdeField: 'crosshair_X_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_lineLineWidth', label: '线段宽度', rules: true,
        jugdeField: 'crosshair_X_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_lineLineDashA', label: '线段实线', rules: true,
        jugdeField: 'crosshair_X_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_lineLineDashB', label: '线段虚线', rules: true,
        jugdeField: 'crosshair_X_lineVisible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: 'X轴标签', name: 'ChartsFromCrosshairX2' },
    { span: 24, formType: 'RADIO', name: 'crosshair_X_labelVisible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_X_labelBackground', label: '背景颜色', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'crosshair_X_labelTextAlign', label: '横向对齐', rules: true, valueEnum: MappingData.Charts__VchartsTextAlign,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'crosshair_X_labelTextBaseline', label: '纵向对齐', rules: true, valueEnum: MappingData.Charts__VchartsTextBaseline,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_X_labelFill', label: '文字颜色', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_labelFontSize', label: '文字字号', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'crosshair_X_labelFontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_X_labelFontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_X_labelFontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_X_labelUnderline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_X_labelLineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_labelShadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_labelShadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_labelShadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_X_labelShadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_X_labelLineWidth', label: '描边粗细', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_X_labelStroke', label: '描边颜色', rules: true,
        jugdeField: 'crosshair_X_labelVisible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: 'Y轴辅助', name: 'ChartsFromCrosshairY1' },
    { span: 24, formType: 'RADIO', name: 'crosshair_Y_lineVisible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_Y_lineType', label: '显示类型', rules: true, valueEnum: MappingData.Charts__VchartsCrosshairType,
        jugdeField: 'crosshair_Y_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_Y_lineFill', label: '填充颜色', rules: true,
        jugdeField: 'crosshair_Y_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_Y_lineStroke', label: '线段颜色', rules: true,
        jugdeField: 'crosshair_Y_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_lineLineWidth', label: '线段宽度', rules: true,
        jugdeField: 'crosshair_Y_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_lineLineDashA', label: '线段实线', rules: true,
        jugdeField: 'crosshair_Y_lineVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_lineLineDashB', label: '线段虚线', rules: true,
        jugdeField: 'crosshair_Y_lineVisible', jugdeValue: [true]
    },

    { formType: 'TempTitle', label: 'Y轴标签', name: 'ChartsFromCrosshairY2' },
    { span: 24, formType: 'RADIO', name: 'crosshair_Y_labelVisible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_Y_labelBackground', label: '背景颜色', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'crosshair_Y_labelTextAlign', label: '横向对齐', rules: true, valueEnum: MappingData.Charts__VchartsTextAlign,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'crosshair_Y_labelTextBaseline', label: '纵向对齐', rules: true, valueEnum: MappingData.Charts__VchartsTextBaseline,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_Y_labelFill', label: '文字颜色', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_labelFontSize', label: '文字字号', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'crosshair_Y_labelFontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_Y_labelFontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_Y_labelFontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_Y_labelUnderline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'crosshair_Y_labelLineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_labelShadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_labelShadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_labelShadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_Y_labelShadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'crosshair_Y_labelLineWidth', label: '描边粗细', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'crosshair_Y_labelStroke', label: '描边颜色', rules: true,
        jugdeField: 'crosshair_Y_labelVisible', jugdeValue: [true]
    }
]

// TODO 总计 - 文字内容
const ChartsFromTotalLabel = [
    { span: 24, formType: 'RADIO', name: 'totalLabel_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'COLOR', name: 'totalLabel_fill', label: '文字颜色', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'totalLabel_fontSize', label: '文字字号', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'totalLabel_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'totalLabel_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'totalLabel_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'totalLabel_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'totalLabel_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'totalLabel_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'totalLabel_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'totalLabel_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'totalLabel_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'totalLabel_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'totalLabel_stroke', label: '描边颜色', rules: true,
        jugdeField: 'totalLabel_visible', jugdeValue: [true]
    },
]

// TODO 标识数据线
const ChartsFromMarkLine = [
    {
        span: 24, formType: 'LIST', name: 'mark_line', label: '标注线',
        children: [
            { span: 24, formType: 'RADIO', name: 'visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'RADIO', name: 'axes', label: '选择轴线', rules: true, valueEnum: MappingData.Charts__VchartsMarkLineAexs,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'INPUT', name: 'number', label: '标注数值', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '标注线', name: 'ChartsFromMarkLine', jugdeField: 'visible', jugdeValue: [true] },
            {
                span: 24, formType: 'COLOR', name: 'line_stroke', label: '线段颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_strokeOpacity', label: '透明度', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_lineDashA', label: '线段实现', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_lineDashB', label: '线段虚线', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_lineWidth', label: '线段线宽', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'line_shadowBlur', label: '阴影大小', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'line_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '标签', name: 'ChartsFromMarkLineLabel' },
            { span: 24, formType: 'RADIO', name: 'label_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'SELECT', name: 'label_position', label: '位置', rules: true, valueEnum: MappingData.Charts__VchartsMarkLinePositionMapping,
                jugdeField: 'label_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_refX', label: 'X轴偏移', rules: true,
                jugdeField: 'label_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_refY', label: 'Y轴偏移', rules: true,
                jugdeField: 'label_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'INPUT', name: 'label_text', label: '内容', rules: true,
                jugdeField: 'label_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_fillOpacity', label: '透明度', rules: true,
                jugdeField: 'label_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'label_fill', label: '文字颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_fontSize', label: '文字字号', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'label_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'label_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'label_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'label_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'label_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'label_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'label_lineWidth', label: '描边粗细', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'label_stroke', label: '描边颜色', rules: true,
                jugdeField: 'title_visible', jugdeValue: [true]
            },
        ]
    }
]

// TODO 标识数据点
const ChartsFromMarkPoint = [
    {
        span: 24, formType: 'LIST', name: 'mark_point', label: '标注点',
        children: [
            { span: 24, formType: 'RADIO', name: 'visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'INPUT', name: 'coordinate_type', label: '类型参数', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'INPUT', name: 'coordinate_value', label: '数值参数', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '前置', name: 'ChartsFromMarkPointTargetSymbol' },
            { span: 24, formType: 'RADIO', name: 'targetSymbol_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_offset', label: '内容间隔', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_size', label: '标记大小', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'targetSymbol_symbolType', label: '标记类型', rules: true, valueEnum: MappingData.Charts__VchartsPointCurveType,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'targetSymbol_fill', label: '填充颜色', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_fillOpacity', label: '透明度', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_shadowBlur', label: '阴影大小', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'targetSymbol_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'targetSymbol_lineWidth', label: '描边粗细', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'targetSymbol_stroke', label: '描边颜色', rules: true,
                jugdeField: 'targetSymbol_visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '引导线', name: 'ChartsFromMarkPointItemLine' },
            { span: 24, formType: 'RADIO', name: 'itemLine_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'SELECT', name: 'itemLine_type', label: '线段类型', rules: true, valueEnum: MappingData.Charts__VchartsMarkPointLineType,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_arcRatio', label: '线段曲率', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemLine_line_stroke', label: '线段颜色', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_line_lineWidth', label: '线段线宽', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_line_lineDashA', label: '线段实线', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_line_lineDashB', label: '线段虚线', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_line_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_line_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_line_shadowBlur', label: '阴影大小', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemLine_line_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'itemLine_visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '引导线(起点)', name: 'ChartsFromMarkPointItemLineStart' },
            { span: 24, formType: 'RADIO', name: 'itemLine_startSymbol_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'SELECT', name: 'itemLine_startSymbol_symbolType', label: '标记类型', rules: true,
                valueEnum: MappingData.Charts__VchartsPointCurveType, jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemLine_startSymbol_fill', label: '标记颜色', rules: true,
                jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_startSymbol_size', label: '标记大小', rules: true,
                jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_startSymbol_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_startSymbol_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_startSymbol_shadowBlur', label: '阴影大小', rules: true,
                jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemLine_startSymbol_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'itemLine_startSymbol_visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '引导线(终点)', name: 'ChartsFromMarkPointItemLineEnd' },
            { span: 24, formType: 'RADIO', name: 'itemLine_endSymbol_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'SELECT', name: 'itemLine_endSymbol_symbolType', label: '标记类型', rules: true,
                valueEnum: MappingData.Charts__VchartsPointCurveType, jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemLine_endSymbol_fill', label: '标记颜色', rules: true,
                jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_endSymbol_size', label: '标记大小', rules: true,
                jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_endSymbol_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_endSymbol_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemLine_endSymbol_shadowBlur', label: '阴影大小', rules: true,
                jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemLine_endSymbol_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'itemLine_endSymbol_visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '标注', name: 'ChartsFromMarkPointItemLineEnd', jugdeField: 'itemLine_visible', jugdeValue: [true] },
            {
                span: 24, formType: 'INPUT', name: 'itemContent_text', label: '内容', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'itemContent_position', label: '位置', rules: true,
                valueEnum: MappingData.Charts__VchartsMarkPointLineContentPosition, jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_offsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_offsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'itemContent_autoRotate', label: '自动旋转', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_fillOpacity', label: '透明度', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemContent_fill', label: '文字颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_fontSize', label: '文字字号', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'itemContent_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'itemContent_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'itemContent_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'itemContent_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'itemContent_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemContent_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'itemContent_lineWidth', label: '描边粗细', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'itemContent_stroke', label: '描边颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
        ]
    }
]

// TODO 滚动条
const ChartsFromScrollBar = [
    {
        span: 24, formType: 'LIST', name: 'scroll_Bar', label: '滚动条',
        children: [
            { span: 24, formType: 'RADIO', name: 'visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'SELECT', name: 'orient', label: '轴线位置', rules: true, valueEnum: MappingData.Charts__VchartsAxesOrientA01,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'start', label: '开始位置', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'end', label: '结束位置', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            { span: 24, formType: 'RADIO', name: 'roamDrag_reverse', label: '拖拽', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'NUMBER', name: 'roamDrag_rate', label: '拖拽比例', rules: true,
                jugdeField: 'roamDrag_reverse', jugdeValue: [true]
            },
            { span: 24, formType: 'RADIO', name: 'roamZoom_focus', label: '缩放', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'NUMBER', name: 'roamZoom_rate', label: '缩放比例', rules: true,
                jugdeField: 'roamZoom_focus', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '轨道', name: 'ChartsFromScrollBarRail', jugdeField: 'visible', jugdeValue: [true] },
            {
                span: 24, formType: 'NUMBER', name: 'rail_cornerRadius', label: '圆角', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'rail_fill', label: '颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'rail_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'rail_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'rail_shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'rail_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            { formType: 'TempTitle', label: '滑块', name: 'ChartsFromScrollBarSlider', jugdeField: 'visible', jugdeValue: [true] },
            {
                span: 24, formType: 'NUMBER', name: 'slider_cornerRadius', label: '圆角', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'slider_fill', label: '颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'slider_shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'slider_shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'slider_shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'slider_shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
        ]
    },
]

// Todo  图元设置 
const ChartsFromPoint = [
    // { span: 24, formType: 'RADIO', name: 'point_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'SELECT', name: 'point_symbolType', label: '默认形状', rules: true, valueEnum: MappingData.Charts__VchartsPointCurveType,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_size', label: '默认大小', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_lineWidth', label: '默认线宽', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_fillOpacity', label: '填充透明度', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'point_fill', label: '填充颜色', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'point_hover_symbolType', label: '选中形状', rules: true, valueEnum: MappingData.Charts__VchartsPointCurveType,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_hover_size', label: '选中大小', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'point_shadowBlur', label: '阴影大小', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'point_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'point_visible', jugdeValue: [true]
    }
]
// Todo  折线&面积图元
const ChartsFromLine = [
    { span: 24, formType: 'RADIO', name: 'line_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'SELECT', name: 'line_curveType', label: '折线类型', rules: true, valueEnum: MappingData.Charts__VchartsLineCurveType,
        jugdeField: 'line_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'line_lineWidth', label: '折线宽度', rules: true,
        jugdeField: 'line_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'line_opacity', label: '透明度', rules: true,
        jugdeField: 'line_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'line_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'line_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'line_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'line_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'line_shadowBlur', label: '阴影大小', rules: true,
        jugdeField: 'line_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'line_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'line_visible', jugdeValue: [true]
    }
]

// Todo 折线&面积标签 LineLabel
const ChartsFromLineLabel = [
    { span: 24, formType: 'RADIO', name: 'lineLabel_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'NUMBER', name: 'lineLabel_fontSize', label: '文字字号', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'lineLabel_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'lineLabel_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'lineLabel_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'lineLabel_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'lineLabel_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'lineLabel_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'lineLabel_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'lineLabel_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'lineLabel_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'lineLabel_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'lineLabel_stroke', label: '描边颜色', rules: true,
        jugdeField: 'lineLabel_visible', jugdeValue: [true]
    },
]

// Todo 柱图&条图图元
const ChartsFromBar = [
    { span: 24, formType: 'RADIO', name: 'bar_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'NUMBER', name: 'bar_cornerRadius', label: '图形圆角', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'bar_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'bar_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'bar_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'bar_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'bar_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'bar_stroke', label: '描边颜色', rules: true,
        jugdeField: 'bar_visible', jugdeValue: [true]
    },
]

// Todo  柱图&条图背景
const ChartsFromBarBack = [
    { span: 24, formType: 'RADIO', name: 'barBack_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'NUMBER', name: 'barBack_cornerRadius', label: '背景圆角', rules: true,
        jugdeField: 'barBack_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'barBack_fill', label: '背景颜色', rules: true,
        jugdeField: 'barBack_visible', jugdeValue: [true]
    },
]



// Todo  饼图 环图 配置
const ChartsFromPie = [
    { formType: 'TempTitle', label: '默认状态', name: 'ChartsFromPie' },
    { span: 24, formType: 'NUMBER', name: 'pie_padAngle', label: '空白角度', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_cornerRadius', label: '色板圆角', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_shadowOffsetX', label: 'X轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_shadowOffsetY', label: 'Y轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_shadowBlur', label: '阴影大小', rules: true },
    { span: 24, formType: 'COLOR', name: 'pie_shadowColor', label: '阴影颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_lineWidth', label: '描边粗细', rules: true },
    { span: 24, formType: 'COLOR', name: 'pie_stroke', label: '描边颜色', rules: true },
    { formType: 'TempTitle', label: '选中状态', name: 'ChartsFromPieHover' },
    { span: 24, formType: 'NUMBER', name: 'pie_hover_outerRadius', label: '扇区半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_hover_shadowOffsetX', label: 'X轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_hover_shadowOffsetY', label: 'Y轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_hover_shadowBlur', label: '阴影大小', rules: true },
    { span: 24, formType: 'COLOR', name: 'pie_hover_shadowColor', label: '阴影颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_hover_lineWidth', label: '描边粗细', rules: true },
    { span: 24, formType: 'COLOR', name: 'pie_hover_stroke', label: '描边颜色', rules: true },
]

const ChartsFromRose = [
    { span: 24, formType: 'NUMBER', name: 'pie_padAngle', label: '空白角度', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_cornerRadius', label: '色板圆角', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_shadowOffsetX', label: 'X轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_shadowOffsetY', label: 'Y轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_shadowBlur', label: '阴影大小', rules: true },
    { span: 24, formType: 'COLOR', name: 'pie_shadowColor', label: '阴影颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'pie_lineWidth', label: '描边粗细', rules: true },
    { span: 24, formType: 'COLOR', name: 'pie_stroke', label: '描边颜色', rules: true },
]

// Todo  环形指示卡
const ChartsFromIndicator = [
    { span: 24, formType: 'RADIO', name: 'indicator_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'RADIO', name: 'indicator_fixed', label: '显示状态', rules: true, valueEnum: MappingData.Charts__VchartsIndicatorFixed,
        jugdeField: 'indicator_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'indicator_trigger', label: '触发类型', rules: true, valueEnum: MappingData.Charts__VchartsIndicatorTrigger,
        jugdeField: 'indicator_visible', jugdeValue: [true]
    },
    { formType: 'TempTitle', label: '标题设置', name: 'ChartsFromIndicatorTitle' },
    { span: 24, formType: 'RADIO', name: 'indicator_title_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_offsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_offsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_space', label: '文本间距', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'INPUT', name: 'indicator_title_text', label: '文本内容', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'indicator_title_fill', label: '文字颜色', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_fontSize', label: '文字字号', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'indicator_title_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'indicator_title_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'indicator_title_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'indicator_title_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'indicator_title_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'indicator_title_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'indicator_title_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'indicator_title_stroke', label: '描边颜色', rules: true,
        jugdeField: 'indicator_title_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'LIST', name: 'indicator_content', label: '内容设置',
        children: [
            { span: 24, formType: 'RADIO', name: 'visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
            {
                span: 24, formType: 'NUMBER', name: 'space', label: '本文间距', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'INPUT', name: 'text', label: '映射字段', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'INPUT', name: 'unit', label: '额外单位',
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'fill', label: '文字颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'fontSize', label: '文字字号', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'SELECT', name: 'fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'RADIO', name: 'lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'shadowOffsetX', label: 'X轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'shadowOffsetY', label: 'Y轴偏移', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'shadowBlur', label: '阴影尺寸', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'shadowColor', label: '阴影颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'NUMBER', name: 'lineWidth', label: '描边粗细', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
            {
                span: 24, formType: 'COLOR', name: 'stroke', label: '描边颜色', rules: true,
                jugdeField: 'visible', jugdeValue: [true]
            },
        ]
    },
]

// TODO 循环仪表图色板
const ChartsFromCircular = [
    {
        span: 24, formType: 'LIST', name: 'circular_color', label: '色板',
        children: [
            { span: 24, formType: 'NUMBER', name: 'offset', label: '颜色比例', rules: true },
            { span: 24, formType: 'COLOR', name: 'color', label: '图例颜色', rules: true },
        ]
    },
    { span: 24, formType: 'NUMBER', name: 'circular_cornerRadius', label: '扇区圆角', rules: true },
    { span: 24, formType: 'COLOR', name: 'circular_track', label: '扇区背景', rules: true },
    { span: 24, formType: 'NUMBER', name: 'circular_shadowOffsetX', label: 'X轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'circular_shadowOffsetY', label: 'Y轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'circular_shadowBlur', label: '阴影大小', rules: true },
    { span: 24, formType: 'COLOR', name: 'circular_shadowColor', label: '阴影颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'circular_lineWidth', label: '描边粗细', rules: true },
    { span: 24, formType: 'COLOR', name: 'circular_stroke', label: '描边颜色', rules: true },
]
// TODO 测量仪表图色板
const ChartsFromGauge = [
    {
        span: 24, formType: 'LIST', name: 'gauge_color', label: '色板',
        children: [
            { span: 24, formType: 'INPUT', name: 'type', label: '图例标题', rules: true },
            { span: 24, formType: 'NUMBER', name: 'value', label: '颜色数值', rules: true },
            { span: 24, formType: 'COLOR', name: 'color', label: '图例颜色', rules: true },
        ]
    },
    { formType: 'TempTitle', label: '色板', name: 'ChartsFromGaugeColor' },
    { span: 24, formType: 'NUMBER', name: 'gauge_segment_cornerRadius', label: '扇区圆角', rules: true },
    { span: 24, formType: 'NUMBER', name: 'gauge_segment_shadowOffsetX', label: 'X轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'gauge_segment_shadowOffsetY', label: 'Y轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'gauge_segment_shadowBlur', label: '阴影大小', rules: true },
    { span: 24, formType: 'COLOR', name: 'gauge_segment_shadowColor', label: '阴影颜色', rules: true },
    { formType: 'TempTitle', label: '标签', name: 'ChartsFromGaugeLabel' },
    { span: 24, formType: 'RADIO', name: 'gauge_label_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    {
        span: 24, formType: 'RADIO', name: 'gauge_label_position', label: '位置信息', rules: true, valueEnum: MappingData.Charts__VchartsPieLabelPosition,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'gauge_label_offsetRadius', label: '色板间距', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'gauge_label_fill', label: '文字颜色', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'gauge_label_fontSize', label: '文字字号', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'SELECT', name: 'gauge_label_fontFamily', label: '文字字体', rules: true, valueEnum: MappingData.Font__Family,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'gauge_label_fontWeight', label: '文字加粗', rules: true, valueEnum: MappingData.Font__WeightInt,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'gauge_label_fontStyle', label: '文字倾斜', rules: true, valueEnum: MappingData.Font__Style,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'gauge_label_underline', label: '下划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'RADIO', name: 'gauge_label_lineThrough', label: '中划线', rules: true, valueEnum: MappingData.IsEnabledBool,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'gauge_label_shadowOffsetX', label: 'X轴偏移', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'gauge_label_shadowOffsetY', label: 'Y轴偏移', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'gauge_label_shadowBlur', label: '阴影尺寸', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'gauge_label_shadowColor', label: '阴影颜色', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'NUMBER', name: 'gauge_label_lineWidth', label: '描边粗细', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    },
    {
        span: 24, formType: 'COLOR', name: 'gauge_label_stroke', label: '描边颜色', rules: true,
        jugdeField: 'gauge_label_visible', jugdeValue: [true]
    }
]

// TODO 仪表图 指针
const ChartsFromPin = [
    { span: 24, formType: 'RADIO', name: 'pin_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'NUMBER', name: 'pin_width', label: '宽度', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pin_height', label: '高度', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
    { span: 24, formType: 'COLOR', name: 'pin_fill', label: '颜色', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pin_shadowOffsetX', label: 'X轴偏移', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pin_shadowOffsetY', label: 'Y轴偏移', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pin_shadowBlur', label: '阴影大小', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
    { span: 24, formType: 'COLOR', name: 'pin_shadowColor', label: '阴影颜色', rules: true, jugdeField: 'pin_visible', jugdeValue: [true] },
]
// TODO 仪表图 中心点
const ChartsFromPointer = [
    { span: 24, formType: 'RADIO', name: 'pointer_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'NUMBER', name: 'pointer_width', label: '宽度', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pointer_height', label: '高度', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
    { span: 24, formType: 'COLOR', name: 'pointer_fill', label: '颜色', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pointer_shadowOffsetX', label: 'X轴偏移', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pointer_shadowOffsetY', label: 'Y轴偏移', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pointer_shadowBlur', label: '阴影大小', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
    { span: 24, formType: 'COLOR', name: 'pointer_shadowColor', label: '阴影颜色', rules: true, jugdeField: 'pointer_visible', jugdeValue: [true] },
]
// TODO 仪表图 指针背景
const ChartsFromPinBackground = [
    { span: 24, formType: 'RADIO', name: 'pinBackground_visible', label: '是否启用', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'NUMBER', name: 'pinBackground_width', label: '宽度', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pinBackground_height', label: '高度', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
    { span: 24, formType: 'COLOR', name: 'pinBackground_fill', label: '颜色', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pinBackground_shadowOffsetX', label: 'X轴偏移', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pinBackground_shadowOffsetY', label: 'Y轴偏移', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
    { span: 24, formType: 'NUMBER', name: 'pinBackground_shadowBlur', label: '阴影大小', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
    { span: 24, formType: 'COLOR', name: 'pinBackground_shadowColor', label: '阴影颜色', rules: true, jugdeField: 'pinBackground_visible', jugdeValue: [true] },
]
// TODO 进度图原图
const ChartsFromProgress = [
    { span: 24, formType: 'COLOR', name: 'track_fill', label: '条形底色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'progress_innerPadding', label: '圆形内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'progress_outerPadding', label: '圆形外间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'progress_shadowOffsetX', label: 'X轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'progress_shadowOffsetY', label: 'Y轴偏移', rules: true },
    { span: 24, formType: 'NUMBER', name: 'progress_shadowBlur', label: '阴影大小', rules: true },
    { span: 24, formType: 'COLOR', name: 'progress_shadowColor', label: '阴影颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'progress_lineWidth', label: '描边粗细', rules: true },
    { span: 24, formType: 'COLOR', name: 'progress_stroke', label: '描边颜色', rules: true },
]

// 数组字段实例
const ChartsFromC01Field = [
    { span: 24, formType: 'INPUT', name: 'list_apiName', label: '数据集合' },
    { span: 24, formType: 'INPUT', name: 'list_dataLevel', label: '数据层级' },
    { span: 24, formType: 'RADIO', name: 'list_dataType', label: '数据类型', valueEnum: MappingData.dataType },
    {
        span: 24, formType: 'LIST', name: 'arr_data', label: '对象数值', jugdeField: 'list_dataType', jugdeValue: ['array'],
        children: [
            { span: 24, formType: 'INPUT', name: 'group', label: '分组名称' },
            { span: 24, formType: 'INPUT', name: 'title', label: '名称字段' },
            { span: 24, formType: 'INPUT', name: 'field', label: '数值字段' },
            { span: 24, formType: 'COLOR', name: 'color', label: '数据颜色' },
        ]
    },
    { span: 24, formType: 'INPUT', name: 'obj_group', label: '分组字段', jugdeField: 'list_dataType', jugdeValue: ['object'] },
    { span: 24, formType: 'INPUT', name: 'obj_title', label: '名称字段', jugdeField: 'list_dataType', jugdeValue: ['object'] },
    { span: 24, formType: 'INPUT', name: 'obj_field', label: '数值字段', jugdeField: 'list_dataType', jugdeValue: ['object'] },
    {
        span: 24, formType: 'LIST', name: 'obj_color', label: '分组颜色', jugdeField: 'list_dataType', jugdeValue: ['object'],
        children: [{ span: 24, formType: 'COLOR', name: 'color', label: '数据颜色', rules: true }]
    },
]
// !!! 图例基础配置
// TODO 折线图&面积图

const ChartsFromC01 = [
    { span: 24, formType: 'RADIO', name: 'type', label: '图例类型', rules: true, valueEnum: MappingData.Charts__VChartsTypeA01 },
    { span: 24, formType: 'RADIO', name: 'stack', label: '是否堆叠', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'RADIO', name: 'percent', label: '百分比显示', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'RADIO', name: 'direction', label: '布局方式', rules: true, valueEnum: MappingData.Charts__VChartsDirectionA01 },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
]

// TODO 柱图
const ChartsFromC02 = [
    { span: 24, formType: 'RADIO', name: 'stack', label: '是否堆叠', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'RADIO', name: 'group', label: '是否分组', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'RADIO', name: 'percent', label: '百分比显示', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'RADIO', name: 'direction', label: '布局方式', rules: true, valueEnum: MappingData.Charts__VChartsDirectionA01 },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'barWidth', label: '柱图宽度', rules: true },
    { span: 24, formType: 'NUMBER', name: 'barGapInGroup', label: '分组间距', rules: true },
]

// TODO 直方图 & 区间柱图
const ChartsFromC03 = [
    { span: 24, formType: 'RADIO', name: 'direction', label: '布局方式', rules: true, valueEnum: MappingData.Charts__VChartsDirectionA01 },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
]

// TODO 饼图 环图
const ChartsFromC05 = [
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'outerRadius', label: '扇区外半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'innerRadius', label: '扇区内半径', rules: true },
]

// TODO 玫瑰图
const ChartsFromC06 = [
    { span: 24, formType: 'RADIO', name: 'group', label: '是否分组', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'outerRadius', label: '扇区外半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'innerRadius', label: '扇区内半径', rules: true },
]

// TODO 雷达图
const ChartsFromC07 = [
    { span: 24, formType: 'RADIO', name: 'stack', label: '是否堆叠', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'RADIO', name: 'percent', label: '百分比显示', rules: true, valueEnum: MappingData.IsEnabledBool },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'outerRadius', label: '扇区外半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'innerRadius', label: '扇区内半径', rules: true },
]

// TODO 仪表图
const ChartsFromC08 = [
    { span: 24, formType: 'RADIO', name: 'gaugeType', label: '图例类型', rules: true, valueEnum: MappingData.Charts__VchartsGaugeTypeMapping },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'outerRadius', label: '扇区外半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'innerRadius', label: '扇区内半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'startAngle', label: '扇区起始角', rules: true },
    { span: 24, formType: 'NUMBER', name: 'endAngle', label: '扇区结束角', rules: true },
    { span: 24, formType: 'INPUT', name: 'centerY', label: 'Y轴偏移', rules: true },
]

// TODO 进度图
const ChartsFromC09 = [
    { span: 24, formType: 'RADIO', name: 'type', label: '图例类型', rules: true, valueEnum: MappingData.Charts__VchartsProgressTypeMapping },
    { span: 24, formType: 'RADIO', name: 'direction', label: '布局方式', rules: true, valueEnum: MappingData.Charts__VChartsDirectionA01 },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'cornerRadius', label: '图元圆角', rules: true },
    { span: 24, formType: 'NUMBER', name: 'radius', label: '环形外半径', rules: true },
    { span: 24, formType: 'NUMBER', name: 'innerRadius', label: '环形内半径', rules: true },
    {
        span: 24, formType: 'LIST', name: 'colorPalette', label: '轴设置',
        children: [
            { span: 24, formType: 'COLOR', name: 'color', label: '图例颜色', rules: true, },
        ]
    },
]

// TODO 水滴图
const ChartsFromC10 = [
    { span: 24, formType: 'SELECT', name: 'maskShape', label: '波纹形状', rules: true, valueEnum: MappingData.Charts__VchartsLiquidMaskShapeMapping },
    { span: 24, formType: 'COLOR', name: 'background', label: '背景颜色', rules: true },
    { span: 24, formType: 'NUMBER', name: 'padding', label: '内间距', rules: true },
    { span: 24, formType: 'NUMBER', name: 'outlinePadding', label: '图元间距', rules: true },
    { span: 24, formType: 'COLOR', name: 'color', label: '边框颜色', rules: true },
    { span: 24, formType: 'COLOR', name: 'liquidBackground', label: '图元背景', rules: true },
    {
        span: 24, formType: 'LIST', name: 'liquid', label: '图元色板',
        children: [
            { span: 24, formType: 'NUMBER', name: 'offset', label: '色板比例', rules: true },
            { span: 24, formType: 'COLOR', name: 'color', label: '图例颜色', rules: true, },
        ]
    },
]


// !!! 交换参数
// 轴设置
const setAxes = (data) => {
    const axes = data.map(item => ({
        animation: true,
        sampling: false,
        orient: item.orient,
        hover: item.hover,
        min: item.min,
        max: item.max,
        title: {
            visible: item.title_visible,
            space: item.title_space,
            text: item.title_text,
            style: {
                fill: item.title_fill,
                fontSize: item.title_fontSize,
                fontFamily: item.title_fontFamily,
                fontWeight: item.title_fontWeight,
                fontStyle: item.title_fontStyle,
                underline: item.title_underline,
                lineThrough: item.title_lineThrough,
                shadowColor: item.title_shadowColor,
                shadowBlur: item.title_shadowBlur,
                shadowOffsetX: item.title_shadowOffsetX,
                shadowOffsetY: item.title_shadowOffsetY,
                stroke: item.title_stroke,
                lineWidth: item.title_lineWidth
            }
        },
        tick: {
            visible: item.tick_visible,
            tickSize: item.tick_tickSize,
            style: { stroke: item.tick_stroke }
        },
        domainLine: {
            visible: item.domainLine_visible,
            style: { stroke: item.domainLine_stroke }
        },
        grid: {
            visible: item.grid_visible,
            style: {
                stroke: item.grid_stroke,
                lineDash: [item.grid_lineDashA, item.grid_lineDashB],
            }
        },
        label: {
            visible: item.label_visible,
            formatMethod: val => `${val} ${item.label_text || ''}`,
            autoRotate: true,
            style: {
                fill: item.label_fill,
                fontSize: item.label_fontSize,
                fontFamily: item.label_fontFamily,
                fontWeight: item.label_fontWeight,
                fontStyle: item.label_fontStyle,
                underline: item.label_underline,
                lineThrough: item.label_lineThrough,
                shadowColor: item.label_shadowColor,
                shadowBlur: item.label_shadowBlur,
                shadowOffsetX: item.label_shadowOffsetX,
                shadowOffsetY: item.label_shadowOffsetY,
                stroke: item.label_stroke,
                lineWidth: item.label_lineWidth,
            }
        },
        unit: {
            visible: item.unit_visible,
            text: item.unit_text,
            style: {
                dx: item.unit_dx,
                dy: item.unit_dy,
                fill: item.unit_fill,
                fontSize: item.unit_fontSize,
                fontFamily: item.unit_fontFamily,
                fontWeight: item.unit_fontWeight,
                fontStyle: item.unit_fontStyle,
                underline: item.unit_underline,
                lineThrough: item.unit_lineThrough,
                shadowColor: item.unit_shadowColor,
                shadowBlur: item.unit_shadowBlur,
                shadowOffsetX: item.unit_shadowOffsetX,
                shadowOffsetY: item.unit_shadowOffsetY,
                stroke: item.unit_stroke,
                lineWidth: item.unit_lineWidth,
            }
        }
    }))
    return axes
}

// 标题设置
const setTitle = (data) => {
    const title = {
        visible: data.title_visible,
        text: data.title_text,
        align: data.title_align,
        innerPadding: data.title_innerPadding,
        textStyle: {
            fill: data.title_fill,
            fontSize: data.title_fontSize,
            fontFamily: data.title_fontFamily,
            fontWeight: data.title_fontWeight,
            fontStyle: data.title_fontStyle,
            textAlign: data.title_textAlign,
            textBaseline: data.title_textBaseline,
            underline: data.title_underline,
            lineThrough: data.title_lineThrough,
            shadowColor: data.title_shadowColor,
            shadowBlur: data.title_shadowBlur,
            shadowOffsetX: data.title_shadowOffsetX,
            shadowOffsetY: data.title_shadowOffsetY,
            background: data.title_background,
            stroke: data.title_stroke,
            lineWidth: data.title_lineWidth,
        }
    }
    return title
}

// 图例设置
const setLegends = (data) => {
    const legends = data.map(item => ({
        visible: item.visible,
        orient: item.orient,
        position: item.position,
        padding: item.padding,
        selectMode: item.selectMode,
        allowAllCanceled: item.allowAllCanceled,
        select: item.select,
        title: {
            visible: item.title_visible,
            text: item.title_text,
            align: item.title_align,
            space: item.title_space,
            textStyle: {
                fill: item.title_fill,
                fontSize: item.title_fontSize,
                fontFamily: item.title_fontFamily,
                fontWeight: item.title_fontWeight,
                fontStyle: item.title_fontStyle,
                underline: item.title_underline,
                lineThrough: item.title_lineThrough,
                textAlign: item.title_textAlign,
                textBaseline: item.title_textBaseline,
                shadowColor: item.title_shadowColor,
                shadowBlur: item.title_shadowBlur,
                shadowOffsetX: item.title_shadowOffsetX,
                shadowOffsetY: item.title_shadowOffsetY,
                background: item.title_background,
                stroke: item.title_stroke,
                lineWidth: item.title_lineWidth,
            }
        },
        item: {
            spaceCol: item.item_spaceCol,
            spaceRow: item.item_spaceRow,
            padding: item.item_padding,
            align: item.item_align,
            focus: item.item_focus,
            focusIconStyle: { size: item.item_focusSize },
            background: { style: { cornerRadius: item.item_backRadius } },
            shape: {
                space: item.item_shape_space,
                style: { size: item.item_shape_size }
            },
            label: {
                space: item.item_label_space,
                style: {
                    cursor: 'pointer',
                    fill: item.item_label_fill,
                    fontSize: item.item_label_fontSize,
                    fontFamily: item.item_label_fontFamily,
                    fontWeight: item.item_label_fontWeight,
                    fontStyle: item.item_label_fontStyle,
                    underline: item.item_label_underline,
                    lineThrough: item.item_label_lineThrough,
                    shadowColor: item.item_label_shadowColor,
                    shadowBlur: item.item_label_shadowBlur,
                    shadowOffsetX: item.item_label_shadowOffsetX,
                    shadowOffsetY: item.item_label_shadowOffsetY,
                    stroke: item.item_label_stroke,
                    lineWidth: item.item_label_lineWidth,
                }
            }
        }
    }))
    return legends
}

// 标签配置
const setLabel = (data) => {
    const label = {
        visible: data.label_visible,
        position: data.label_position,
        formatter: data.label_formatter,
        offset: data.label_offset,
        overlap: data.label_overlap,
        smartInvert: data.label_smartInvert,
        style: {
            direction: data.label_direction,
            maxLineWidth: data.label_maxLineWidth,
            fillOpacity: data.label_fillOpacity,
            fontSize: data.label_fontSize,
            fontFamily: data.label_fontFamily,
            fontWeight: data.label_fontWeight,
            fontStyle: data.label_fontStyle,
            underline: data.label_underline,
            lineThrough: data.label_lineThrough,
            suffixPosition: data.label_suffixPosition,
            shadowColor: data.label_shadowColor,
            shadowBlur: data.label_shadowBlur,
            shadowOffsetX: data.label_shadowOffsetX,
            shadowOffsetY: data.label_shadowOffsetY,
            stroke: data.label_stroke,
            lineWidth: data.label_lineWidth
        }
    }
    return label
}

// 提示设置
const setTooltip = (data) => {
    const tooltip = {
        visible: data.tooltip_visible,
        trigger: data.tooltip_trigger,

        // 原图
        mark: {
            visible: data.tooltip_mark_visible,
            position: data.tooltip_mark_position,
            positionMode: data.tooltip_mark_positionMode,
        },

        // 纬度图
        dimension: {
            visible: data.tooltip_dimension_visible,
            position: data.tooltip_dimension_position,
            positionMode: data.tooltip_dimension_positionMode,
        },
        style: {
            panel: {  // 背景框
                padding: data.tooltip_panel_padding,
                backgroundColor: data.tooltip_panel_backgroundColor,
                border: {
                    color: data.tooltip_panel_borderColor,
                    width: data.tooltip_panel_borderWidth,
                    radius: data.tooltip_panel_borderRadius
                },
                shadow: {
                    x: data.tooltip_panel_shadowX,
                    y: data.tooltip_panel_shadowY,
                    blur: data.tooltip_panel_shadowBlur,
                    color: data.tooltip_panel_shadowColor,
                    spread: data.tooltip_panel_shadowSpread,
                }
            },
            titleLabel: {
                fontSize: data.tooltip_titleLabel_fontSize,
                fontFamily: data.tooltip_titleLabel_fontFamily,
                fontColor: data.tooltip_titleLabel_fontColor,
                fontWeight: data.tooltip_titleLabel_fontWeight,
                textAlign: data.tooltip_titleLabel_textAlign,
            },
            shape: {
                size: data.tooltip_shape_size,
                spacing: data.tooltip_shape_spacing
            },
            keyLabel: {
                fontSize: data.tooltip_keyLabel_fontSize,
                fontFamily: data.tooltip_keyLabel_fontFamily,
                fontColor: data.tooltip_keyLabel_fontColor,
                fontWeight: data.tooltip_keyLabel_fontWeight,
                textAlign: data.tooltip_keyLabel_textAlign,
                spacing: data.tooltip_keyLabel_tspacing
            },
            valueLabel: {
                fontSize: data.tooltip_valueLabel_fontSize,
                fontColor: data.tooltip_valueLabel_fontColor,
                textAlign: data.tooltip_valueLabel_textAlign,
                fontFamily: data.tooltip_valueLabel_fontFamily,
                fontWeight: data.tooltip_valueLabel_fontWeight,
                spacing: data.tooltip_valueLabel_tspacing
            },
            spaceRow: data.tooltip_spaceRow
        }
    }
    return tooltip
}

// 指示器设置
const setCrosshair = (data) => {
    const crosshair = {
        trigger: data.crosshair_trigger,
        xField: {
            visible: data.crosshair_X_visible,
            line: {
                visible: data.crosshair_X_lineVisible,
                type: data.crosshair_X_lineType,
                style: {
                    fill: data.crosshair_X_lineFill,
                    stroke: data.crosshair_X_lineStroke,
                    lineWidth: data.crosshair_X_lineLineWidth,
                    lineDash: [data.crosshair_X_lineLineDashA, data.crosshair_X_lineLineDashB]
                }
            },
            label: {
                visible: data.crosshair_X_labelVisible,
                style: {
                    background: data.crosshair_X_labelBackground,
                    fill: data.crosshair_X_labelFill,
                    fontSize: data.crosshair_X_labelFontSize,
                    fontFamily: data.crosshair_X_labelFontFamily,
                    fontWeight: data.crosshair_X_labelFontWeight,
                    fontStyle: data.crosshair_X_labelFontStyle,
                    textAlign: data.crosshair_X_labelTextAlign,
                    textBaseline: data.crosshair_X_labelTextBaseline,
                    underline: data.crosshair_X_labelUnderline,
                    lineThrough: data.crosshair_X_labelLineThrough,
                    shadowColor: data.crosshair_X_labelShadowColor,
                    shadowBlur: data.crosshair_X_labelShadowBlur,
                    shadowOffsetX: data.crosshair_X_labelShadowOffsetX,
                    shadowOffsetY: data.crosshair_X_labelShadowOffsetY,
                    stroke: data.crosshair_X_labelStroke,
                    lineWidth: data.crosshair_X_labelLineWidth,
                }
            },
        },
        yField: {
            visible: data.crosshair_Y_visible,
            line: {
                visible: data.crosshair_Y_lineVisible,
                type: data.crosshair_Y_lineType,
                style: {
                    fill: data.crosshair_Y_lineFill,
                    stroke: data.crosshair_Y_lineStroke,
                    lineWidth: data.crosshair_Y_lineLineWidth,
                    lineDash: [data.crosshair_Y_lineLineDashA, data.crosshair_Y_lineLineDashB]
                }
            },
            label: {
                visible: data.crosshair_Y_labelVisible,
                style: {
                    background: data.crosshair_Y_labelBackground,
                    fill: data.crosshair_Y_labelFill,
                    fontSize: data.crosshair_Y_labelFontSize,
                    fontFamily: data.crosshair_Y_labelFontFamily,
                    fontWeight: data.crosshair_Y_labelFontWeight,
                    fontStyle: data.crosshair_Y_labelFontStyle,
                    textAlign: data.crosshair_Y_labelTextAlign,
                    textBaseline: data.crosshair_Y_labelTextBaseline,
                    underline: data.crosshair_Y_labelUnderline,
                    lineThrough: data.crosshair_Y_labelLineThrough,
                    shadowColor: data.crosshair_Y_labelShadowColor,
                    shadowBlur: data.crosshair_Y_labelShadowBlur,
                    shadowOffsetX: data.crosshair_Y_labelShadowOffsetX,
                    shadowOffsetY: data.crosshair_Y_labelShadowOffsetY,
                    stroke: data.crosshair_Y_labelStroke,
                    lineWidth: data.crosshair_Y_labelLineWidth,
                }
            },
        },
    }
    return crosshair
}

// 总计标签
const setTotalLabel = (data) => {
    const totalLabel = {
        visible: data.totalLabel_visible,
        style: {
            fill: data.totalLabel_fill,
            fontSize: data.totalLabel_fontSize,
            fontFamily: data.totalLabel_fontFamily,
            fontWeight: data.totalLabel_fontWeight,
            fontStyle: data.totalLabel_fontStyle,
            underline: data.totalLabel_underline,
            lineThrough: data.totalLabel_lineThrough,
            fillOpacity: data.totalLabel_fillOpacity,
            shadowColor: data.totalLabel_shadowColor,
            shadowBlur: data.totalLabel_shadowBlur,
            shadowOffsetX: data.totalLabel_shadowOffsetX,
            shadowOffsetY: data.totalLabel_shadowOffsetY,
            stroke: data.totalLabel_stroke,
            lineWidth: data.totalLabel_lineWidth
        }
    }
    return totalLabel
}

// 数据标注线
const setMarkLine = (data) => {
    const markLine = data.map(item => ({
        endSymbol: { visible: false },
        visible: item.visible,
        [item.axes]: item.number,
        line: {
            style: {
                stroke: item.line_stroke,
                strokeOpacity: item.line_strokeOpacity,
                lineDash: [item.line_lineDashA, item.line_lineDashB],
                lineWidth: item.line_lineWidth,
                shadowColor: item.line_shadowColor,
                shadowBlur: item.line_shadowBlur,
                shadowOffsetX: item.line_shadowOffsetX,
                shadowOffsetY: item.line_shadowOffsetY,
            }
        },
        label: {
            visible: item.label_visible,
            position: item.label_position,
            refX: item.label_refX,
            refY: item.label_refY,
            style: {
                text: item.label_text,
                fill: item.label_fill,
                fontSize: item.label_fontSize,
                fontFamily: item.label_fontFamily,
                fontWeight: item.label_fontWeight,
                fontStyle: item.label_fontStyle,
                underline: item.label_underline,
                lineThrough: item.label_lineThrough,
                fillOpacity: item.label_fillOpacity,
                shadowColor: item.label_shadowColor,
                shadowBlur: item.label_shadowBlur,
                shadowOffsetX: item.label_shadowOffsetX,
                shadowOffsetY: item.label_shadowOffsetY,
                stroke: item.label_stroke,
                lineWidth: item.label_lineWidth
            }
        }
    }))
    return markLine
}

// 数据标注点
const setMarkPoint = (data) => {
    const markPoint = data.map(item => ({
        visible: item.visible,
        coordinate: { xField: item.coordinate_type, yField: item.coordinate_value },
        targetSymbol: {
            visible: item.targetSymbol_visible,
            offset: item.targetSymbol_offset,
            style: {
                symbolType: item.targetSymbol_symbolType,
                size: item.targetSymbol_size,
                fill: item.targetSymbol_fill,
                fillOpacity: item.targetSymbol_fillOpacity,
                shadowColor: item.targetSymbol_shadowColor,
                shadowBlur: item.targetSymbol_shadowBlur,
                shadowOffsetX: item.targetSymbol_shadowOffsetX,
                shadowOffsetY: item.targetSymbol_shadowOffsetY,
                stroke: item.targetSymbol_stroke,
                lineWidth: item.targetSymbol_lineWidth
            }
        },
        itemLine: {
            visible: item.itemLine_visible,
            type: item.itemLine_type,
            arcRatio: item.itemLine_arcRatio, // 弧线幅度
            startSymbol: {
                visible: item.itemLine_startSymbol_visible,
                size: item.itemLine_startSymbol_size,
                style: {
                    fill: item.itemLine_startSymbol_fill,
                    symbolType: item.itemLine_startSymbol_symbolType,
                    shadowColor: item.itemLine_startSymbol_shadowColor,
                    shadowBlur: item.itemLine_startSymbol_shadowBlur,
                    shadowOffsetX: item.itemLine_startSymbol_shadowOffsetX,
                    shadowOffsetY: item.itemLine_startSymbol_shadowOffsetY,
                }
            },
            endSymbol: {
                visible: item.itemLine_endSymbol_visible,
                size: item.itemLine_endSymbol_size,
                style: {
                    fill: item.itemLine_endSymbol_fill,
                    symbolType: item.itemLine_endSymbol_symbolType,
                    shadowColor: item.itemLine_endSymbol_shadowColor,
                    shadowBlur: item.itemLine_endSymbol_shadowBlur,
                    shadowOffsetX: item.itemLine_endSymbol_shadowOffsetX,
                    shadowOffsetY: item.itemLine_endSymbol_shadowOffsetY,
                }
            },
            line: {
                style: {
                    stroke: item.itemLine_line_stroke,
                    lineWidth: item.itemLine_line_lineWidth,
                    lineDash: [item.itemLine_line_lineDashA, item.itemLine_line_lineDashB],
                    shadowColor: item.itemLine_line_shadowColor,
                    shadowBlur: item.itemLine_line_shadowBlur,
                    shadowOffsetX: item.itemLine_line_shadowOffsetX,
                    shadowOffsetY: item.itemLine_line_shadowOffsetY,
                }
            }
        },
        itemContent: {
            type: 'text',
            position: item.itemContent_position,
            offsetX: item.itemContent_offsetX,
            offsetY: item.itemContent_offsetY,
            autoRotate: item.itemContent_autoRotate, // 自动旋转
            text: {
                style: {
                    text: item.itemContent_text,
                    fill: item.itemContent_fill,
                    fontSize: item.itemContent_fontSize,
                    fontFamily: item.itemContent_fontFamily,
                    fontWeight: item.itemContent_fontWeight,
                    fontStyle: item.itemContent_fontStyle,
                    underline: item.itemContent_underline,
                    lineThrough: item.itemContent_lineThrough,
                    fillOpacity: item.itemContent_fillOpacity,
                    shadowColor: item.itemContent_shadowColor,
                    shadowBlur: item.itemContent_shadowBlur,
                    shadowOffsetX: item.itemContent_shadowOffsetX,
                    shadowOffsetY: item.itemContent_shadowOffsetY,
                    stroke: item.itemContent_stroke,
                    lineWidth: item.itemContent_lineWidth
                }
            }
        },
    }))
    return markPoint
}

// 滚动条
const setScrollBar = (data) => {
    const scrollBar = data.map(item => ({
        innerPadding: 0,
        visible: item.visible,
        orient: item.orient,
        start: item.start,
        end: item.end,
        roamDrag: {
            rate: item.roamDrag_rate,
            enable: item.roamDrag_reverse
        },
        roamZoom: {
            rate: item.roamZoom_rate,
            enable: item.roamZoom_focus
        },
        rail: {
            style: {
                cornerRadius: item.rail_cornerRadius,
                fill: item.rail_fill,
                shadowColor: item.rail_shadowColor,
                shadowBlur: item.rail_shadowBlur,
                shadowOffsetX: item.rail_shadowOffsetX,
                shadowOffsetY: item.rail_shadowOffsetY,
            }
        },
        slider: {
            style: {
                cornerRadius: item.slider_cornerRadius,
                fill: item.slider_fill,
                shadowColor: item.slider_shadowColor,
                shadowBlur: item.slider_shadowBlur,
                shadowOffsetX: item.slider_shadowOffsetX,
                shadowOffsetY: item.slider_shadowOffsetY,
            }
        }
    }))
    return scrollBar
}


// 图元样式
const setPoint = (data) => {
    const point = {
        visible: data.point_visible,
        style: {
            stroke: null,
            cursor: 'pointer',
            symbolType: data.point_symbolType,
            size: data.point_size,
            lineWidth: data.point_lineWidth,
            fill: data.point_fill,
            fillOpacity: data.point_fillOpacity,
            shadowColor: data.point_shadowColor,
            shadowBlur: data.point_shadowBlur,
            shadowOffsetX: data.point_shadowOffsetX,
            shadowOffsetY: data.point_shadowOffsetY,
        },
        state: {
            dimension_hover: {
                symbolType: data.point_hover_symbolType,
                size: data.point_hover_size
            }
        }
    }
    return point
}

// 线段&面积图元
const setLine = (data) => {
    const line = {
        visible: data.line_visible,
        style: {
            cursor: 'pointer',
            lineDash: [0, 0],
            curveType: data.line_curveType,
            lineWidth: data.line_lineWidth,
            opacity: data.line_opacity,
            shadowColor: data.line_shadowColor,
            shadowBlur: data.line_shadowBlur,
            shadowOffsetX: data.line_shadowOffsetX,
            shadowOffsetY: data.line_shadowOffsetY,
        }
    }
    return line
}

// 折线&面积  标签
const setLineLabel = (data) => {
    const lineLabel = {
        visible: data.lineLabel_visible,
        style: {
            fontSize: data.lineLabel_fontSize,
            fontFamily: data.lineLabel_fontFamily,
            fontWeight: data.lineLabel_fontWeight,
            fontStyle: data.lineLabel_fontStyle,
            underline: data.lineLabel_underline,
            lineThrough: data.lineLabel_lineThrough,
            shadowColor: data.lineLabel_shadowColor,
            shadowBlur: data.lineLabel_shadowBlur,
            shadowOffsetX: data.lineLabel_shadowOffsetX,
            shadowOffsetY: data.lineLabel_shadowOffsetY,
            stroke: data.lineLabel_stroke,
            lineWidth: data.lineLabel_lineWidth,
        }
    }
    return lineLabel
}

// 柱图&条图图元
const setBar = (data) => {
    const bar = {
        visible: data.bar_visible,
        style: {
            cornerRadius: data.bar_cornerRadius,
            shadowColor: data.bar_shadowColor,
            shadowBlur: data.bar_shadowBlur,
            shadowOffsetX: data.bar_shadowOffsetX,
            shadowOffsetY: data.bar_shadowOffsetY,
            lineWidth: data.bar_lineWidth,
            stroke: data.bar_stroke,
        }
    }
    return bar
}

// 柱图&条图  背景
const setBarBackground = (data) => {
    const barBackground = {
        visible: data.barBack_visible,
        style: {
            cornerRadius: data.barBack_cornerRadius,
            fill: data.barBack_fill
        }
    }
    return barBackground
}

// 饼图&环图图元
const setPie = (data) => {
    const pie = {
        style: {
            cursor: 'pointer',
            padAngle: data.pie_padAngle,
            cornerRadius: data.pie_cornerRadius,
            shadowColor: data.pie_shadowColor,
            shadowBlur: data.pie_shadowBlur,
            shadowOffsetX: data.pie_shadowOffsetX,
            shadowOffsetY: data.pie_shadowOffsetY,
            stroke: data.pie_stroke,
            lineWidth: data.pie_lineWidth
        },
        state: {
            hover: {
                outerRadius: data.pie_hover_outerRadius,
                shadowColor: data.pie_hover_shadowColor,
                shadowBlur: data.pie_hover_shadowBlur,
                shadowOffsetX: data.pie_hover_shadowOffsetX,
                shadowOffsetY: data.pie_hover_shadowOffsetY,
                stroke: data.pie_hover_stroke,
                lineWidth: data.pie_hover_lineWidth
            }
        }
    }
    return pie
}

// 饼图指示卡
const setIndicator = (data, init) => {
    const indicator = {
        limitRatio: 1,
        visible: data.indicator_visible,
        fixed: data.indicator_fixed,
        trigger: data.indicator_trigger,
        offsetX: data.indicator_title_offsetX,
        offsetY: data.indicator_title_offsetY,
        title: {
            visible: data.indicator_title_visible,
            space: data.indicator_title_space,
            style: {
                text: data.indicator_title_text,
                fill: data.indicator_title_fill,
                fontSize: data.indicator_title_fontSize,
                fontFamily: data.indicator_title_fontFamily,
                fontWeight: data.indicator_title_fontWeight,
                fontStyle: data.indicator_title_fontStyle,
                underline: data.indicator_title_underline,
                lineThrough: data.indicator_title_lineThrough,
                shadowColor: data.indicator_title_shadowColor,
                shadowBlur: data.indicator_title_shadowBlur,
                shadowOffsetX: data.indicator_title_shadowOffsetX,
                shadowOffsetY: data.indicator_title_shadowOffsetY,
                stroke: data.indicator_title_stroke,
                lineWidth: data.indicator_title_lineWidth
            }
        },
        content: data.indicator_content.map(item => ({
            visible: item.visible,
            space: item.space,
            style: {
                text: datum => {
                    const d = datum ?? init[0]
                    return `${d[item.text] || 0}${item.unit}`
                },
                fill: item.fill,
                fontSize: item.fontSize,
                fontFamily: item.fontFamily,
                fontWeight: item.fontWeight,
                fontStyle: item.fontStyle,
                underline: item.underline,
                lineThrough: item.lineThrough,
                shadowColor: item.shadowColor,
                shadowBlur: item.shadowBlur,
                shadowOffsetX: item.shadowOffsetX,
                shadowOffsetY: item.shadowOffsetY,
                stroke: item.stroke,
                lineWidth: item.lineWidth
            }
        }))
    }
    return indicator
}

// 玫瑰图图元
const setRose = (data) => {
    const rose = {
        style: {
            cursor: 'pointer',
            padAngle: data.pie_padAngle,
            cornerRadius: data.pie_cornerRadius,
            shadowColor: data.pie_shadowColor,
            shadowBlur: data.pie_shadowBlur,
            shadowOffsetX: data.pie_shadowOffsetX,
            shadowOffsetY: data.pie_shadowOffsetY,
            stroke: data.pie_stroke,
            lineWidth: data.pie_lineWidth
        },
    }
    return rose
}

// 仪表图设置
const setGauge = (data) => {
    const gauge = data.gaugeType === 'circularProgress' ?
        {
            type: 'circularProgress',
            progress: {
                style: {
                    fill: { gradient: 'conical', stops: data.circular_color },
                    cornerRadius: data.circular_cornerRadius,
                    shadowColor: data.circular_shadowColor,
                    shadowBlur: data.circular_shadowBlur,
                    shadowOffsetX: data.circular_shadowOffsetX,
                    shadowOffsetY: data.circular_shadowOffsetY,
                    stroke: data.circular_stroke,
                    lineWidth: data.circular_lineWidth
                }
            },
            track: { style: { fill: data.circular_track } }
        } :
        {
            type: 'gauge',
            dataIndex: 1,
            categoryField: 'type',
            valueField: 'value',
            seriesField: 'type',
            segment: {
                style: {
                    fill: datum => datum['color'],
                    cornerRadius: data.gauge_segment_cornerRadius,
                    shadowColor: data.gauge_segment_shadowColor,
                    shadowBlur: data.gauge_segment_shadowBlur,
                    shadowOffsetX: data.gauge_segment_shadowOffsetX,
                    shadowOffsetY: data.gauge_segment_shadowOffsetY,
                }
            },
            label: {
                visible: data.gauge_label_visible,
                position: data.gauge_label_position,
                offsetRadius: data.gauge_label_offsetRadius,
                style: {
                    text: datum => datum['type'],
                    fill: data.gauge_label_fill,
                    fontSize: data.gauge_label_fontSize,
                    fontFamily: data.gauge_label_fontFamily,
                    fontWeight: data.gauge_label_fontWeight,
                    fontStyle: data.gauge_label_fontStyle,
                    underline: data.gauge_label_underline,
                    lineThrough: data.gauge_label_lineThrough,
                    shadowColor: data.gauge_label_shadowColor,
                    shadowBlur: data.gauge_label_shadowBlur,
                    shadowOffsetX: data.gauge_label_shadowOffsetX,
                    shadowOffsetY: data.gauge_label_shadowOffsetY,
                    stroke: data.gauge_label_stroke,
                    lineWidth: data.gauge_label_lineWidth
                }
            }
        }
    return gauge
}

// 仪表图指针
const setPointer = (data) => {
    const pointer = {
        visible: data.pointer_visible,
        width: data.pointer_width,
        height: data.pointer_height,
        style: {
            fill: data.pointer_fill,
            shadowColor: data.pointer_shadowColor,
            shadowBlur: data.pointer_shadowBlur,
            shadowOffsetX: data.pointer_shadowOffsetX,
            shadowOffsetY: data.pointer_shadowOffsetY,
        }
    }
    return pointer
}

// 仪表图指针圆点
const setPin = (data) => {
    const pin = {
        visible: data.pin_visible,
        width: data.pin_width,
        height: data.pin_height,
        style: {
            fill: data.pin_fill,
            shadowColor: data.pin_shadowColor,
            shadowBlur: data.pin_shadowBlur,
            shadowOffsetX: data.pin_shadowOffsetX,
            shadowOffsetY: data.pin_shadowOffsetY,
        }
    }
    return pin
}

// 仪表图指针背景
const setPinBackground = (data) => {
    const pinBackground = {
        visible: data.pinBackground_visible,
        width: data.pinBackground_width,
        height: data.pinBackground_height,
        style: {
            fill: data.pinBackground_fill,
            shadowColor: data.pinBackground_shadowColor,
            shadowBlur: data.pinBackground_shadowBlur,
            shadowOffsetX: data.pinBackground_shadowOffsetX,
            shadowOffsetY: data.pinBackground_shadowOffsetY,
        }
    }
    return pinBackground
}

// 进度条
const setProgress = (data, type) => {
    const progress = {
        visible: true,
        style: type === 'linearProgress' ?
            {
                shadowColor: data.progress_shadowColor,
                shadowBlur: data.progress_shadowBlur,
                shadowOffsetX: data.progress_shadowOffsetX,
                shadowOffsetY: data.progress_shadowOffsetY,
                stroke: data.progress_stroke,
                lineWidth: data.progress_lineWidth
            } : {
                innerPadding: data.progress_innerPadding,
                outerPadding: data.progress_outerPadding,
                shadowColor: data.progress_shadowColor,
                shadowBlur: data.progress_shadowBlur,
                shadowOffsetX: data.progress_shadowOffsetX,
                shadowOffsetY: data.progress_shadowOffsetY,
                stroke: data.progress_stroke,
                lineWidth: data.progress_lineWidth
            }
    }
    return progress
}





export const ChartsConfig = {
    DefaultColor,
    ChartsFromAxesA01,
    ChartsFromAxesA02,
    ChartsFromTitle,
    ChartsFromLegends,
    ChartsFromLabelA01,
    ChartsFromLabelA02,
    ChartsFromTooltip,
    ChartsFromCrosshair,
    ChartsFromTotalLabel,
    ChartsFromMarkLine,
    ChartsFromMarkPoint,
    ChartsFromScrollBar,
    ChartsFromPoint,
    ChartsFromLine,
    ChartsFromLineLabel,
    ChartsFromBar,
    ChartsFromBarBack,
    ChartsFromPie,
    ChartsFromRose,
    ChartsFromIndicator,
    ChartsFromCircular,
    ChartsFromGauge,
    ChartsFromPin,
    ChartsFromPointer,
    ChartsFromPinBackground,
    ChartsFromProgress,

    ChartsFromC01,
    ChartsFromC02,
    ChartsFromC03,
    ChartsFromC05,
    ChartsFromC06,
    ChartsFromC07,
    ChartsFromC08,
    ChartsFromC09,
    ChartsFromC10,

    ChartsFromC01Field,


    setAxes,
    setTitle,
    setLegends,
    setLabel,
    setTooltip,
    setCrosshair,

    setTotalLabel,
    setMarkLine,
    setMarkPoint,
    setScrollBar,

    setPoint,
    setLine,
    setLineLabel,

    setBar,
    setBarBackground,

    setPie,
    setIndicator,
    setRose,
    setGauge,

    setPin,
    setPointer,
    setPinBackground,

    setProgress,

}